package com.yang.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yang.domain.Result;
import com.yang.domain.entity.User;

import java.util.List;



/**
 * <p>
 * 用户表(User)表服务接口
 * </p>
 * @author yang
 * @date 2023/5/30
 */
public interface UserService extends IService<User> {

    /**
     * 从SecurityHolder里面取出id，查询用户的信息
     */
    Result userInfo();

    /**
     * 对用户的信息进行修改
     */
    Result updateUserInfo(User user);

    /**
     * 用户注册功能
     */
    Result registerUser(User user);

    /**
     * 查询所有的用户
     * @param user 封装查询条件
     * @param pageNum 第几页
     * @param pageSize 一页几条数据
     * @return 用户结果集
     */
    Result findUserList(User user, Integer pageNum, Integer pageSize);


    /**
     * 校验并且新增用户
     * @param user user
     * @return Result
     */
    Result checkAndAddUser(User user);

    Result deleteUser(List<Long> userIds);

    Result getUserInfo(Long userId);

    Result updateUser(User user);
}
